#ifndef CHECKBOXCONTROL_H_
#define CHECKBOXCONTROL_H_

#include "Control.h"
/**
 * \class CheckBoxControl
 * \brief A Control-derivative class which the server renders as a check box form on the web page
 *
 * The class has a description to go along with the check box and contains a boolean value.
 *
 * The bool is defined as true if the box it checked, false otherwise.
 */
class CheckBoxControl: public Control {
public:
	CheckBoxControl(std::string controlDescription);
	virtual ~CheckBoxControl();

	/**
	 * \brief redefinition of \a Element::getType() to return the correct value
	 * \return CHECKBOXCONTROL
	 */
	int getType();
	void setValueBool(bool newState);
	bool getValueBool();

	void setValue(void* newValue);

private:
	bool valueBool;
};

#endif /* CHECKBOXCONTROL_H_ */
